package com.fantasy.dao;

import com.fantasy.entity.Video;

import java.util.List;

public interface VideoDao {
    /**
     * 添加视频
     * @param video
     * @return
     */
    int insert(Video video);

    /**
     * 修改视频
     * @param video
     * @return
     */
    int upDate(Video video);

    /**
     * 删除视频
     * @param videoID
     * @return
     */
    int delete(Long videoID);

    /**
     * 查询所有视频
     * @return
     */
    List<Video> queryAll();

    /**
     * 通过id查找视频
     * @param videoID
     * @return
     */
    Video queryById(Long videoID);

    /**
     * 查询总记录数
     * @return
     */
    Integer queryForPageTotalCount();

    /**
     * 分页查询Dao层方法
     * @param begin
     * @param pageSize
     * @return
     */
    List<Video> queryForPageItems(int begin,int pageSize);

    /**
     * 滑轮事件 新增视频内容
     * @param begin
     * @param pageSize
     * @param typeId
     * @return
     */
    List<Video> pulley(int begin,int pageSize,int typeId );

    /**
     * 根据视频类型查找视频总数
     * @param typeId
     * @return
     */
    int videTypeCount(int typeId);


    /**
     * 查询搜索结果总记录数
     * @return
     */
    Integer queryForResultPageTotalCount(String videoName);

    /**
     * 分页查询Dao层方法
     * @param videoName
     * @param begin
     * @param pageSize
     * @return
     */
    List<Video> queryForResultPageItems(String videoName,int begin,int pageSize);

    /**
     * 通过用户id查找视频
     * @param userId
     * @return
     */
    List<Video> queryByUserId(String userId);


    /**
     * 查询用户自己的视频总记录数
     * @return
     */
    Integer queryForUserVideoTotalCount(int userId);
}
